--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Node / ReticulumProjects / MeshChatX.git / files / meshchatx / src / frontend / components / rnode / RNodeDiagnosticsPanel.vue
Displaying Raw • Download
meshchatx/src/frontend/components/rnode/RNodeDiagnosticsPanel.vue fa34a0731c96da043235b215b6497e9138d3352f (fa34a073) Text, 4.81 KB
T8b949e<!-- SPDX-License-Identifier: 0BSD -->
Tb4b4b4<Tff7b72templateTb4b4b4>
Tb4b4b4<Tff7b72div
Te6edf3v-ifTff7b72=Ta5d6ff"Te6edf3diagnosticsTa5d6ff"
Te6edf3classTff7b72=Ta5d6ff"border border-gray-200 dark:border-zinc-800 bg-white dark:bg-zinc-950 rounded-lg overflow-hidden"
Tb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"px-4 sm:px-6 py-4 border-b border-gray-100 dark:border-zinc-800 flex items-center gap-2"Tb4b4b4>
Tb4b4b4<Tff7b72MaterialDesignIcon Te6edf3icon-nameTff7b72=Ta5d6ff"stethoscope" Te6edf3classTff7b72=Ta5d6ff"size-5 text-emerald-500" Tb4b4b4/Tb4b4b4>
Tb4b4b4<Tff7b72h3 Te6edf3classTff7b72=Ta5d6ff"font-bold text-gray-900 dark:text-zinc-100"Tb4b4b4>
Tff7b72{{ Te6edf3$tTb4b4b4(Ta5d6ff"tools.rnode_flasher.diagnostics.title"Tb4b4b4) Tff7b72}}
Tb4b4b4<Tb4b4b4/Tff7b72h3Tb4b4b4>
Tb4b4b4<Tff7b72span
Te6edf3v-ifTff7b72=Ta5d6ff"Te6edf3hasIssuesTa5d6ff"
Te6edf3classTff7b72=Ta5d6ff"ml-auto px-2 py-0.5 text-[10px] font-bold uppercase tracking-wider rounded-full bg-amber-100 dark:bg-amber-900/30 text-amber-700 dark:text-amber-300"
Tb4b4b4>
Tff7b72{{ Te6edf3$tTb4b4b4(Ta5d6ff"tools.rnode_flasher.diagnostics.needs_attention"Tb4b4b4) Tff7b72}}
Tb4b4b4<Tb4b4b4/Tff7b72spanTb4b4b4>
Tb4b4b4<Tff7b72span
Te6edf3v-else
Te6edf3classTff7b72=Ta5d6ff"ml-auto px-2 py-0.5 text-[10px] font-bold uppercase tracking-wider rounded-full bg-emerald-100 dark:bg-emerald-900/30 text-emerald-700 dark:text-emerald-300"
Tb4b4b4>
Tff7b72{{ Te6edf3$tTb4b4b4(Ta5d6ff"tools.rnode_flasher.diagnostics.healthy"Tb4b4b4) Tff7b72}}
Tb4b4b4<Tb4b4b4/Tff7b72spanTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72dl Te6edf3classTff7b72=Ta5d6ff"grid grid-cols-2 sm:grid-cols-4 gap-x-4 gap-y-3 p-4 sm:p-6 text-xs"Tb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3v-forTff7b72=Ta5d6ff"Te6edf3row Tff7b72in Te6edf3summaryRowsTa5d6ff" Tb4b4b4:Te6edf3keyTff7b72=Ta5d6ff"Te6edf3rowTb4b4b4.Te6edf3keyTa5d6ff" Te6edf3classTff7b72=Ta5d6ff"space-y-0.5 min-w-0"Tb4b4b4>
Tb4b4b4<Tff7b72dt Te6edf3classTff7b72=Ta5d6ff"text-[10px] font-bold uppercase tracking-wider text-gray-400 dark:text-zinc-500"Tb4b4b4>
Tff7b72{{ Te6edf3$tTb4b4b4(Te6edf3rowTb4b4b4.Te6edf3labelKeyTb4b4b4) Tff7b72}}
Tb4b4b4<Tb4b4b4/Tff7b72dtTb4b4b4>
Tb4b4b4<Tff7b72dd Te6edf3classTff7b72=Ta5d6ff"font-mono text-gray-800 dark:text-zinc-200 break-all"Tb4b4b4>
Tff7b72{{ Te6edf3rowTb4b4b4.Te6edf3value Tff7b72|| Ta5d6ff"-" Tff7b72}}
Tb4b4b4<Tb4b4b4/Tff7b72ddTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72dlTb4b4b4>
Tb4b4b4<Tff7b72div
Te6edf3v-ifTff7b72=Ta5d6ff"Te6edf3hasIssuesTa5d6ff"
Te6edf3classTff7b72=Ta5d6ff"border-t border-gray-100 dark:border-zinc-800 bg-amber-50/40 dark:bg-amber-900/10 px-4 sm:px-6 py-4 space-y-2"
Tb4b4b4>
Tb4b4b4<Tff7b72div Te6edf3classTff7b72=Ta5d6ff"text-[10px] font-bold uppercase tracking-wider text-amber-700 dark:text-amber-300"Tb4b4b4>
Tff7b72{{ Te6edf3$tTb4b4b4(Ta5d6ff"tools.rnode_flasher.diagnostics.issues_detected"Tb4b4b4) Tff7b72}}
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tff7b72ul Te6edf3classTff7b72=Ta5d6ff"list-disc pl-4 text-xs text-amber-800 dark:text-amber-200 space-y-1"Tb4b4b4>
Tb4b4b4<Tff7b72li Te6edf3v-forTff7b72=Ta5d6ff"Te6edf3key Tff7b72in Te6edf3diagnosticsTb4b4b4.Te6edf3suggestionKeysTa5d6ff" Tb4b4b4:Te6edf3keyTff7b72=Ta5d6ff"Te6edf3keyTa5d6ff"Tb4b4b4>Tff7b72{{ Te6edf3$tTb4b4b4(Te6edf3keyTb4b4b4) Tff7b72}}Tb4b4b4<Tb4b4b4/Tff7b72liTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72ulTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72divTb4b4b4>
Tb4b4b4<Tb4b4b4/Tff7b72templateTb4b4b4>
Tb4b4b4<Tff7b72scriptTb4b4b4>
Tff7b72import Te6edf3MaterialDesignIcon Tff7b72from Ta5d6ff"../MaterialDesignIcon.vue"Tb4b4b4;
Tff7b72export Tff7b72default Tb4b4b4{
Te6edf3nameTff7b72: Ta5d6ff"RNodeDiagnosticsPanel"Tb4b4b4,
Te6edf3componentsTff7b72: Tb4b4b4{ Te6edf3MaterialDesignIcon Tb4b4b4}Tb4b4b4,
Te6edf3propsTff7b72: Tb4b4b4{
Te6edf3diagnosticsTff7b72: Tb4b4b4{ Te6edf3typeTff7b72: Tffa657ObjectTb4b4b4, Tff7b72defaultTff7b72: Tff7b72null Tb4b4b4}Tb4b4b4,
Tb4b4b4}Tb4b4b4,
Te6edf3computedTff7b72: Tb4b4b4{
Te6edf3hasIssuesTb4b4b4(Tb4b4b4) Tb4b4b4{
Tff7b72return Tffa657ArrayTb4b4b4.Te6edf3isArrayTb4b4b4(Tff7b72thisTb4b4b4.Te6edf3diagnosticsTff7b72?Tb4b4b4.Te6edf3issuesTb4b4b4) Tff7b72&& Tff7b72thisTb4b4b4.Te6edf3diagnosticsTb4b4b4.Te6edf3issuesTb4b4b4.Te6edf3length Tff7b72> T79c0ff0Tb4b4b4;
Tb4b4b4}Tb4b4b4,
Te6edf3summaryRowsTb4b4b4(Tb4b4b4) Tb4b4b4{
Tff7b72const Te6edf3s Tff7b72= Tff7b72thisTb4b4b4.Te6edf3diagnosticsTff7b72?Tb4b4b4.Te6edf3summary Tff7b72|| Tb4b4b4{Tb4b4b4}Tb4b4b4;
Tff7b72return Tb4b4b4[
Tb4b4b4{
Te6edf3keyTff7b72: Ta5d6ff"firmware_version"Tb4b4b4,
Te6edf3labelKeyTff7b72: Ta5d6ff"tools.rnode_flasher.diagnostics.firmware_version"Tb4b4b4,
Te6edf3valueTff7b72: Te6edf3sTb4b4b4.Te6edf3firmware_versionTb4b4b4,
Tb4b4b4}Tb4b4b4,
Tb4b4b4{
Te6edf3keyTff7b72: Ta5d6ff"platform"Tb4b4b4,
Te6edf3labelKeyTff7b72: Ta5d6ff"tools.rnode_flasher.diagnostics.platform"Tb4b4b4,
Te6edf3valueTff7b72: Te6edf3sTb4b4b4.Te6edf3platform Tff7b72!= Tff7b72null Tff7b72? Ta5d6ff`Ta5d6ff0xTffd700${Te6edf3sTb4b4b4.Te6edf3platformTb4b4b4.Te6edf3toStringTb4b4b4(T79c0ff16Tb4b4b4)Tb4b4b4.Te6edf3padStartTb4b4b4(T79c0ff2Tb4b4b4, Ta5d6ff"0"Tb4b4b4)Tffd700}Ta5d6ff` Tff7b72: Tff7b72nullTb4b4b4,
Tb4b4b4}Tb4b4b4,
Tb4b4b4{
Te6edf3keyTff7b72: Ta5d6ff"board"Tb4b4b4,
Te6edf3labelKeyTff7b72: Ta5d6ff"tools.rnode_flasher.diagnostics.board"Tb4b4b4,
Te6edf3valueTff7b72: Te6edf3sTb4b4b4.Te6edf3board Tff7b72!= Tff7b72null Tff7b72? Ta5d6ff`Ta5d6ff0xTffd700${Te6edf3sTb4b4b4.Te6edf3boardTb4b4b4.Te6edf3toStringTb4b4b4(T79c0ff16Tb4b4b4)Tb4b4b4.Te6edf3padStartTb4b4b4(T79c0ff2Tb4b4b4, Ta5d6ff"0"Tb4b4b4)Tffd700}Ta5d6ff` Tff7b72: Tff7b72nullTb4b4b4,
Tb4b4b4}Tb4b4b4,
Tb4b4b4{
Te6edf3keyTff7b72: Ta5d6ff"is_provisioned"Tb4b4b4,
Te6edf3labelKeyTff7b72: Ta5d6ff"tools.rnode_flasher.diagnostics.provisioned"Tb4b4b4,
Te6edf3valueTff7b72: Te6edf3sTb4b4b4.Te6edf3is_provisioned Tff7b72? Ta5d6ff"yes" Tff7b72: Ta5d6ff"no"Tb4b4b4,
Tb4b4b4}Tb4b4b4,
Tb4b4b4{
Te6edf3keyTff7b72: Ta5d6ff"product"Tb4b4b4,
Te6edf3labelKeyTff7b72: Ta5d6ff"tools.rnode_flasher.diagnostics.product"Tb4b4b4,
Te6edf3valueTff7b72: Te6edf3sTb4b4b4.Te6edf3product Tff7b72!= Tff7b72null Tff7b72? Ta5d6ff`Ta5d6ff0xTffd700${Te6edf3sTb4b4b4.Te6edf3productTb4b4b4.Te6edf3toStringTb4b4b4(T79c0ff16Tb4b4b4)Tb4b4b4.Te6edf3padStartTb4b4b4(T79c0ff2Tb4b4b4, Ta5d6ff"0"Tb4b4b4)Tffd700}Ta5d6ff` Tff7b72: Tff7b72nullTb4b4b4,
Tb4b4b4}Tb4b4b4,
Tb4b4b4{
Te6edf3keyTff7b72: Ta5d6ff"model"Tb4b4b4,
Te6edf3labelKeyTff7b72: Ta5d6ff"tools.rnode_flasher.diagnostics.model"Tb4b4b4,
Te6edf3valueTff7b72: Te6edf3sTb4b4b4.Te6edf3model Tff7b72!= Tff7b72null Tff7b72? Ta5d6ff`Ta5d6ff0xTffd700${Te6edf3sTb4b4b4.Te6edf3modelTb4b4b4.Te6edf3toStringTb4b4b4(T79c0ff16Tb4b4b4)Tb4b4b4.Te6edf3padStartTb4b4b4(T79c0ff2Tb4b4b4, Ta5d6ff"0"Tb4b4b4)Tffd700}Ta5d6ff` Tff7b72: Tff7b72nullTb4b4b4,
Tb4b4b4}Tb4b4b4,
Tb4b4b4{
Te6edf3keyTff7b72: Ta5d6ff"fw_hash"Tb4b4b4,
Te6edf3labelKeyTff7b72: Ta5d6ff"tools.rnode_flasher.diagnostics.firmware_hash"Tb4b4b4,
Te6edf3valueTff7b72: Te6edf3sTb4b4b4.Te6edf3firmware_hash Tff7b72? Te6edf3sTb4b4b4.Te6edf3firmware_hashTb4b4b4.Te6edf3sliceTb4b4b4(T79c0ff0Tb4b4b4, T79c0ff16Tb4b4b4) Tff7b72: Tff7b72nullTb4b4b4,
Tb4b4b4}Tb4b4b4,
Tb4b4b4{
Te6edf3keyTff7b72: Ta5d6ff"target_hash"Tb4b4b4,
Te6edf3labelKeyTff7b72: Ta5d6ff"tools.rnode_flasher.diagnostics.target_hash"Tb4b4b4,
Te6edf3valueTff7b72: Te6edf3sTb4b4b4.Te6edf3target_firmware_hash Tff7b72? Te6edf3sTb4b4b4.Te6edf3target_firmware_hashTb4b4b4.Te6edf3sliceTb4b4b4(T79c0ff0Tb4b4b4, T79c0ff16Tb4b4b4) Tff7b72: Tff7b72nullTb4b4b4,
Tb4b4b4}Tb4b4b4,
Tb4b4b4]Tb4b4b4;
Tb4b4b4}Tb4b4b4,
Tb4b4b4}Tb4b4b4,
Tb4b4b4}Tb4b4b4;
Tb4b4b4<Tb4b4b4/Tff7b72scriptTb4b4b4>
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────